﻿using System.Drawing;

namespace AiFrame.InterfaceLib.Policy.ProductLine
{
    /// <summary>
    /// Represents a product line for the application.
    /// A product line specification is mandatory for an AiFrame application.
    /// </summary>
    public interface IProductLine
    {
        /// <summary>
        /// Returns the logo (login logo) of the application.
        /// </summary>
        /// <returns>The logo.</returns>
        Image GetLogo();

        /// <summary>
        /// Returns the product family.
        /// </summary>
        /// <returns>The product family.</returns>
        ProductFamily GetProductLine();
        
        /// <summary>
        /// Returns the product name.
        /// </summary>
        /// <returns>The product name.</returns>
        string ProgramName();

        /// <summary>
        /// Returns the program icon.
        /// </summary>
        /// <returns>The program icon.</returns>
        System.Drawing.Icon Icon();
    }
}